package yun1.shuxue;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

/**
 * 数组长度：4
 * 
 * 0 0000 {}
 * 1 0001 {1}
 * 2 0010 {2}
 * 3 0011 {1,2}
 * ……
 * E 1110 {2,3,4}
 * F 1111 {1,2,3,4}
 * {{}，{1}，{2}}
 * 11111  1 2 4 8 16 32 64     2^3 =8 1000 0111 10000 1111
 * 拿到4位二进制，0010 除N取余法 001 00 0
 *
 */

public class MySubSets {
	public static void main(String[] args) throws IOException {
		
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));	
		String line = br.readLine();
		
		String[] arr = line.split(",");
		int[] a = new int[arr.length];
		
		for(int i=0;i<arr.length;i++) {
			a[i] = Integer.valueOf(arr[i]);
		}		
		//int[] a = {1,2,3,4}; 
		
		for(int i=0;i<Math.pow(2, a.length);i++) {
			int n = i;
			int index = 0;//除2取余，记录的是除2的次数
			//一个while循环处理的是一组4位二进制
			System.out.print("{");
			while(n>0) {
				if(n%2 == 1) {
					if(n>2) {//表明现在处理1是不是最后一个 2=10
						System.out.print(a[index]+" ");
					}else {
						System.out.print(a[index]);
					}					
				}
				index++;
				n=n/2;
			}
			System.out.println("}");			
		}
	}
}
